'use strict'
const path = require('path')
function resolve (dir) {
  return path.join(__dirname, dir)
}
const name = process.env.VUE_APP_TITLE || '劳务派遣监管平台' // 网页标题
const environment = '/prod-api'

const port = process.env.port || process.env.npm_config_port || 8088 // 端口
module.exports = {
  publicPath: './', // 资源目录，本地调试一般'./'或者'.'都没关系，production正式环境要看服务器那边的端口是怎么指定的
  outputDir: 'dist', // 打包所在位置
  assetsDir: 'static', // 打包之后的静态文件，这个例子完整就是'dist/static'
  // lintOnSave: process.env.NODE_ENV !== 'production', // eslint是否在调试的时候就报错，一般本地开发的时候是打开，然后生产环境就关掉 防止以为这些格式在浏览器一堆报错
  lintOnSave: process.env.NODE_ENV === 'development',
  productionSourceMap: false, // 不想被看到源码，就把productionSourceMap 设置为false，既可以减少包大小，也可以加密源码
  devServer: {
    host: '0.0.0.0',
    port: port,
    open: true,
    proxy: {
      [environment]: {
        // target: 'http://172.30.4.22:8090',
        target: 'http://192.168.3.159:8090', // 本地开发
        // target: `http://192.168.1.170:8090`, // 测试环境
        // 21正式生产环境 172.30.4.21
        // 22正式生产环境 172.30.4.22
        changeOrigin: true,
        pathRewrite: {
          ['^' + environment]: ''
        }
      }
    },
    disableHostCheck: true
  },
  configureWebpack: {
    name: name,
    resolve: {
      alias: {
        '@': resolve('src'),
        '@ui': resolve('src/ui') // 第三方库
      }
    }
  },
  pluginOptions: {
    'style-resources-loader': {
      preProcessor: 'less',
      patterns: [
        path.resolve(__dirname, './src/assets/style/variable.less')
      ]
    }
  },
  css: {
    // postcss-pxtorem适配
    loaderOptions: {
      postcss: {
        plugins: [
          require('postcss-pxtorem')({
            rootValue: 37.5,
            propList: ['*']
          })
        ]
      }
    }
  },
  chainWebpack: config => {
    // 如果你使用的是sass，则此处应该为
    // const oneOfsMap = config.module.rule('sass').oneOfs.store
    // 依此类推，其他的比如stylus等一样用法
    const oneOfsMap = config.module.rule('less').oneOfs.store
    oneOfsMap.forEach(item => {
      item
        .use('sass-resources-loader')
        .loader('sass-resources-loader')
        .options({
            // 这里填入你的样式文件地址
            resources: './src/assets/style/common.less'
        })
        .end()
    })
  }
}
